#include <stdio.h>

int main(void)
{
    int nums[]={1,2,3,4,5};//nums转为隐式指针
    int *ptr=nums;
    printf("nums[0]:%p\n",&nums[0]);
    printf("   nums:%p\n",nums);//保存的是首元素地址
    printf("    ptr:%p\n",ptr);//打印指针中保存的地址
    printf("sizeof nums:%ld\n",sizeof(nums));//整个数组大小
    printf("sizeof ptr:%ld\n",sizeof(ptr));//指针本身大小

    //数组名不能++/--
    //nums++;错误
    //只能通过下标方式操作元素
    //printf("%d\n",nums[2]);
    //指针可以++/--
    ptr++;//默认指向数组首元素，此时移动1元素位置指向第二个元素
    printf("%d\n",*ptr);
    //数组名的指向不可更改，但是指针可以
    int nums2[]={1,2,3};//nums转为隐式指针
    ptr=&nums2[0];
    printf("    ptr:%p\n",ptr);//打印指针中保存的地址
    return 0;
}